package hcn.protocol.brandnew.zhenliao.jiancha;

import lombok.Data;
import javax.xml.bind.annotation.*;
import java.util.List;
import hcn.protocol.brandnew.BaseRequest;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import ctd.util.xml.jaxb.DateTimeAdapter;
import org.atag.sysrouter.annotation.DictionaryMapping;

import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;


/**
 * 检查申请单查询-请求消息 - ODS_03070010
 *
 * @author enjoyLife
 */
@Data
@XmlRootElement(name = "MsgBody")
@XmlAccessorType(XmlAccessType.FIELD)
public class GetApplyFormListRequest extends BaseRequest {

    /**
     * 影像中心机构代码
     */
    @XmlElement(name = "RisOrgCode")
    private String risOrgCode;
    /**
     * 检查执行机构编码
     */
    @XmlElement(name = "ExamExecuteOrg")
    private String examExecuteOrg;
    /**
     * 就诊机构代码/开单机构代码
     */
    @XmlElement(name = "VisitOrganization")
    private String visitOrganization;
    /**
     * 检查类别代码
     */
    @XmlElement(name = "ExamTypeCode")
    private String examTypeCode;
    /**
     * 身份证件类别代码
     */
    @XmlElement(name = "IdCardCode")
    @DictionaryMapping(id = "CV02_01_101")
    private String idCardCode;
    /**
     * 身份证件号码
     */
    @XmlElement(name = "IdCard")
    private String idCard;
    /**
     * 患者类型代码
     */
    @XmlElement(name = "PatientType")
    private String patientType;
    /**
     * 业务系统患者档案ID
     */
    @XmlElement(name = "SourcePatientId")
    private String sourcePatientId;
    /**
     * 患者姓名
     */
    @XmlElement(name = "PatientName")
    private String patientName;
    /**
     * 检查申请单编号
     */
    @XmlElement(name = "RequestId")
    private String requestId;
    /**
     * 门（急）诊号
     */
    @XmlElement(name = "ClinicId")
    private String clinicId;
    /**
     * 住院号
     */
    @XmlElement(name = "HospizationId")
    private String hospizationId;
    /**
     * 就诊流水号
     */
    @XmlElement(name = "VisitId")
    private String visitId;
    /**
     * 申请单开单时间(开始条件)
     */
    @XmlElement(name = "BeginTime")
    @XmlJavaTypeAdapter(DateTimeAdapter.class)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date beginTime;
    /**
     * 申请单开单时间(结束条件)
     */
    @XmlElement(name = "EndTime")
    @XmlJavaTypeAdapter(DateTimeAdapter.class)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date endTime;
    /**
     * 分页页数
     */
    @XmlElement(name = "PageNo")
    private Long pageNo;
    /**
     * 每页条数
     */
    @XmlElement(name = "PageSize")
    private Long pageSize;

}
